home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / pctj8403.arc / VDOXQQ.PAS < prev   
Pascal/Delphi Source File  |  1980-01-01  |  2KB  |  69 lines

  1. Program Type_Ten_Interrupts(input,output);
  2.  
  3.   { Barbara Clinger
  4.     Professor of Mathematics
  5.     Wheaton College
  6.     Norton, Mass. 02766
  7.     September 28, 1983 }
  8.  
  9.  
  10. Function vdoxqq (areg: word): word; extern;
  11. Var [extern] vrBXqq, vrCXqq, vrDXqq : word;
  12.  
  13. Var
  14.     AX,CX            : word;
  15.     AH, AL              : word;
  16.     BH, BL              : word;
  17.     CH, CL              : word;
  18.     DH, DL              : word;
  19.     Display_Page        : word;
  20.     Answer              : char;
  21.  
  22. Begin
  23.  
  24.   Display_Page := 0;
  25.  
  26.       { Enter 80x24 color graphics, text mode }
  27.   AH := 0; AL := 3;  { Type 0, Mode 3}
  28.   AX := vdoxqq(byword(AH,AL));
  29.       { Clear the screen, set background to black, foreground to red }
  30.   AH := 6; AL := 0;  { Type 6, AL = 0 clears the screen }
  31.   BH := 66;             { attribute, green on red }
  32.   CH := 0; CL := 0;     { row, col of upper left corner to scroll }
  33.   DH := 24; DL := 79;   { row, col of lower right corner to scroll }
  34.   vrBXqq := byword(BH,0);
  35.   vrCXqq := byword(CH,CL);
  36.   vrDXqq := byword(DH,DL);
  37.   AX := vdoxqq(byword(AH,AL));
  38.  
  39.       { place the cursor in row 12, column 39 }
  40.   AH := 2;   { Type 2 }
  41.   BH := Display_Page;
  42.   DH := 12; DL := 39;
  43.   vrBXqq := byword(BH,BL);
  44.   vrDXqq := byword(DH,DL);
  45.   AX := vdoxqq(byword(AH,0));
  46.  
  47.       { Write six A's }
  48.   AH := 9; AL := 65;    { Type 9, A is ASCII 65 }
  49.   BH := Display_Page; BL := 30;  { 30 produces bright yellow on blue }
  50.   CX := 6;
  51.   vrBXqq := byword(BH,BL);
  52.   vrCXqq := CX;
  53.   AX := vdoxqq(byword(AH,AL));
  54.  
  55.       { Read current cursor position }
  56.   AH := 3;  { Type 3 }
  57.   BH := Display_Page;
  58.   vrBXqq := byword(BH,0);
  59.   AX := vdoxqq(byword(AH,0));
  60.   Writeln;
  61.   DH := vrDXqq DIV 256; DL := vrDXqq MOD 256;
  62.   Writeln(DH:6,DL:6);
  63.   Writeln;
  64.   Write('Enter a character ');readln(answer);
  65.  
  66.       { Return to 80x25 black and white alphanumerics }
  67.   AX := vdoxqq(byword(0,2))
  68. End.
  69.